Skip to content

数据库模块总览 - Overview

本分类做什么

提供 SQLite 风格连接、执行 SQL、遍历结果集、按类型读列 等 API。字库、图像资源、配置项等可统一落库;多接口支持 db 传 0 表示默认库(需已打开,见各页)。与 Config相关图像数据库 配合使用。


一、连接生命周期

接口差异
CreateDatabase创建 库文件(若策略为「不存在则建」类,见详情页)。
OpenDatabase打开已有文件;不存在 时行为与 CreateDatabase 成对阅读。
OpenMemoryDatabase内存库,进程结束即失(适合缓存/会话)。
CloseDatabase关闭连接、释放句柄。
GetDatabaseError取最后一次错误信息。

选型:持久配置与字库 → 文件库;临时高速 → 内存库


二、执行方式:三种「执行」接口

接口返回典型 SQL
ExecuteSql无结果集或影响行数(见详情页)DDL、INSERT、UPDATE、DELETE
ExecuteScalar单个标量SELECT COUNT(*)SELECT MAX(id)
ExecuteReader结果集游标,需 Read 循环多行 SELECT

差异:需要 遍历多行多列ExecuteReader;只要 一个值ExecuteScalar;不要结果 → ExecuteSql


三、结果集遍历:Read 与列访问

步骤接口
移动行Read
行数/列数GetDataCountGetColumnCount
列名/类型/索引GetColumnNameGetColumnTypeGetColumnIndex
按列索引读GetDoubleGetInt32GetInt64GetString
按列名读GetDoubleByColumnName
结束Finalize

与 ORM 区别:此处为 底层 sqlite3 风格,需自行处理 SQL 注入(参数绑定若插件支持见版本说明)。


四、元数据

接口用途
GetAllTableNames枚举表。
GetTableInfoGetTableInfoDetail表结构简版/详版。

五、与其它模块

模块关系
Config相关配置库 存键值,不一定手写 SQL。
设置DbPath 等指定 默认库

六、快速选型

需求建议
存字库、配置、图元数据OpenDatabase + ExecuteSql / Reader
只查一个计数ExecuteScalar
临时会话OpenMemoryDatabase